# 作者：詹广权
# 版权所有：www.cdsjcc.cn/su-xz
# 说明：插件主入口文件，负责加载各组件模块
# 功能：负责按正确顺序加载插件的各个功能模块，初始化插件环境。

require 'sketchup.rb'

# 定义加载路径
PLUGIN_PATH = File.dirname(__FILE__)

puts "线生成槽插件开始加载..."

# 加载插件组件 - 按依赖顺序优化
puts "加载参数设置模块..."
require File.join(PLUGIN_PATH, 'cs.rb')     # 加载参数设置模块，在其他功能模块之前

puts "加载线转槽模块..."
require File.join(PLUGIN_PATH, 'kc.rb')     # 加载线转槽模块，在工具栏之前

puts "加载可视化预览模块..."
require File.join(PLUGIN_PATH, 'yl.rb')     # 加载可视化预览模块，在工具栏之前

# 贴图穿透模块已移除

puts "加载工具栏模块..."
require File.join(PLUGIN_PATH, 'gjl.rb')    # 加载工具栏模块

puts "加载扩展程序功能..."
require File.join(PLUGIN_PATH, 'qd-kz.rb')  # 最后加载扩展程序功能

module SuXZ
  # 在加载插件时执行
  def self.start_plugin
    # 在这里添加您的插件启动代码
    puts "线生成槽插件已成功启动!"
    
    # 加载扩展程序
    puts "初始化扩展程序..."
    KZ.load_extensions
    
    puts "检查模块是否已正确加载..."
    puts "- CS模块: #{defined?(SuXZ::CS) ? '已加载' : '未加载'}"
    puts "- KC模块: #{defined?(SuXZ::KC) ? '已加载' : '未加载'}"
    puts "- YL模块: #{defined?(SuXZ::YL) ? '已加载' : '未加载'}"
    # TT模块已移除
    puts "- GJL模块: #{defined?(SuXZ::GJL) ? '已加载' : '未加载'}"
    puts "- KZ模块: #{defined?(SuXZ::KZ) ? '已加载' : '未加载'}"
    
    # 标记为已加载
    @loaded = true
    puts "插件初始化完成!"
  end
  
  # 启动插件
  self.start_plugin
end